1. Field of the Invention
The present invention relates to a material requirements computing method which computes various parts and materials necessary for products to be produced when a production plan is input, and to a material requirements computing device.
2. Description of Related Art
In planning the manufacture of a product such as a motor, material requirements planning (hereinafter, referred to as MRP) is well-known as a method of automatically computing the types of parts and the number of parts necessary to manufacture products.
The material requirements computing method refers to the computing method for the MRP, and a material requirements computing device refers to the computing device for the MRP. Hereinafter, the material requirements computation is called "MRP computation".
The MRP and conventional MRP computing method is described, for example, in "ILLUSTRATION 500 MRP TERMS SELECTION" (published by Nikkan-Kogyo Newspaper Publishing Co. in 1983). The conventional MRP computing method will be briefly explained below.
In the MRP computation, an ordering plan, containing the necessary number and delivery time of necessary components which are either purchased or manufactured as constituents of the plan, such as parts and materials, is computed according to a master production schedule (hereinafter, referred to as MPS) for a prescribed production level. This computation roughly requires three items of information as follows:
(1) MPS
MPR generally represents a production plan for an item (product) at a top level in a parts expansion diagram. This may be called a master production schedule.
(2) Parts table
The parts table (or a bill of materials) represents a table listing two items of master data: data peculiar to items, called "item data (or parts list data)" and data called "product configuration data (or product structure data)" showing the relationship between items such as product and part, part and part, or part and material.
The item data includes, for example, the time (hereinafter referred to as "lead time") necessary to produce or purchase parts. For example, the information regarding child items needed to produce an item, or the number of child items needed for an item to be produced (called "number" of child items) can be obtained according to the product configuration data.
(3) Inventory and order backlog
This means the number of goods in stock or being processed at the current time for each item, or the delivery time of an ordered item and the predetermined number thereof (order backlog information).
In the MRP computation, the following five calculations are carried out for each item, based on the above-mentioned information.
(1) Total requirements computation
The total requirements are calculated on a term basis, by reading the requirements data of an item and then collecting the required amount during a term. Briefly, the daily planning will be explained below with the term set to one day.
(2) Net requirements computation
This refers to the calculation of the net requirements needed for a day by reserving the stock and order backlog based on the calculated total requirements.
(3) Lot sizing
Items are sized or collected in an amount suitable to the procedure, using the lot size set for an item, based on the net requirements calculated on day by day basis.
(4) Lead time computation
The order is prepared by subtracting a lead time from the delivery time of the collected lots and then calculating the order date and launch date.
(5) Requirements expansion
The prepared order is developed to the lower item by using the parts table. Specifically, the date before an order launch date is set as a request date. The requirements of each child item are computed based on the child item of product configuration data, as well as the number thereof, and then written in as the requirements data of each item.
Hereinafter, the computation including the items (1) to (5) is generically called as "expansion computation". The MRP computation relates to all products set by the MPS and is applied to the expansion computation of all the items needed in the product production.
In this case, care should be taken with respect to the timing when an expansion computation is performed for each item. For example, in the case of the product having the configuration shown in the parts expansion (developed) diagram in FIG. 2, the item CL corresponds to the child item of each of the items HC and RC. For that reason, the total requirements of the item CL is the sum of the requirements of the item HC and the requirements of the item RC. The expansion computation for the item CL must be made after the expansion computation has been completed for the items HC and RC.
In this example, the parts configuration is relatively simple because there is only one product. However, the computation must also be carried out for the complicated configuration including several hundreds or several thousands products, and several tens of thousands of items.
In the conventional MRP computation, the expansion computation for each item is controlled by introducing low level codes and using queues. The pointer called an activity chain is generally used instead of queues. However, this is substantially the same as the control method. Hence the conventional MRP computing method using queues will be explained below as an example.
By judging whether what hierarchy in the parts configuration an item belongs to according to the parts developed diagram of a product shown in FIG. 2, a level code can be added to the item. Some items may belong to plural hierarchies in a product, or to different hierarchies in plural products. The item may have plural level codes. Of these, the level code at the lowest point is set to as a low level code. The low level code indicates the direction in which the expansion develops to the level of a more basic item in the parts diagram. Normally, the level code represents the product level at a "0" level. The number of level codes increases as the hierarchy develops in the direction of basic items. Hence, the low level code corresponds to the largest level code among the level codes added to the item. This means that only one low level code is defined for each item, different from the level codes. The low level code of each item is set by searching all the items in the parts table before the MRP computation, and then writing the item data as information peculiar to the item.
The conventional MRP computation utilizes the low level code and decides on sequential order of expansion computation of each item on a level by level basis. Specially, the conventional MRP computing process advances through the following steps.
(1) MPS reading
The requirements read from MSP are written to the item at a product level in the MPS. At the same time, the item name is input to the level 0 queue.
(2) Starting a computation from the level 0 queue
When the MPS reading has been completed, one item name is taken out of the level "0" queue to execute the expansion computation of the item. Then, the next item name is taken out of the queue. In this case, when the requirements are developed in the expansion computation, the child item name is entered into the queue at the low level code of the child item. However, if the queue already includes a child name, that process is not executed.
(3) Level by level expansion
When a queue of a level becomes empty, one item name is taken out of the queue at the next lower level to perform the expansion computation for the item. Item names continue to be removed from the queue at the level until the queue becomes empty. When requirements are developed through expansion computation, the name of a child item is input to the queue at a low level code of the child item. However, if the queue already includes a child name, that process is not executed.
(4) Completion of MRP computation
When all queues become empty, the computation is completed.
As has already been described, the conventional MRP computation is controlled using a low level code and queue in such a manner that the parts expansion computation for each item is definitely performed after the completion of all the parts expansion computations for the parent item. However, in this control method, since the expansion computation for each resulting item is carried out sequentially, an enormous amount of processing time is needed when the number of each of the products and parts is large and the planning term is long. For that reason, the MRP computation cannot be performed frequently. For example, there is the disadvantage in that the conventional MRP computation cannot be deal quickly with certain situations, such as where the production plan is changed as a result of market trends, or the stocks or order backlog are changed. In other words, a significant problem is the fact that taking relatively long time to add the level codes makes it difficult to realize high-speed MRP computation.
For that reason a material requirements computing system which enables high speed processing by adopting the parallel processing technique has recently been proposed. Japanese Patent Laid-open publication (TOKKAI-HEI) No. 3-226845, for example, discloses such a material requirements computing system. However, since the prior art relates to a process using level codes, the above-mentioned problems cannot be solved.
On the other hand, in order to execute processing at a high-speed by executing the parallel processes, it is important to consider how the loads to be processed are distributed, like the problems of the level code. As a conventional load distributing method, there is a method of making appropriate decisions so as to equalize the amount of data processed by plural process elements. However, in the assignment obtained by using the conventional load distributing method, the communication traffic to be processed between the process elements becomes heavy, with the result that the processing time may increase somewhat. In spite of such a problem, in the conventionally-proposed parallel processing system, the load distribution has not been considered with respect to which computer should execute the data loading or requirements computation of each item.